home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / RTANKSRC.ZIP / GRAPHICS.C < prev    next >
C/C++ Source or Header  |  1995-03-07  |  2KB  |  76 lines

  1. /**--------------------------------------------------------------
  2.  **
  3.  **--------------------------------------------------------------
  4.  ** MODULE     : Graphics.c
  5.  ** PURPOSE    : <t> Graphics primitives for Interp.C
  6.  ** PROGRAMMER : Sandy
  7.  ** START DATE : 11/30/1988 06:23:28
  8.  ** DESCRIPTION:
  9.  **            :
  10.  **            :
  11.  **==============================================================
  12.  **/
  13.  
  14. #include <stdio.h>
  15. #include <stdlib.h>
  16. #include "dtypes.h"
  17. #include "conio.h"
  18. #include "graph.h"
  19.  
  20. /*<f>----------------------------------------
  21.  * FUNCTION: <s> void v_draw_screen(PSTR s)
  22.  * PURPOSE : Draw boarder on screen
  23.  *         :
  24.  * CREATION: 11/30/1988 06:54:38
  25.  */
  26. void v_draw_screen(PSTR s)
  27. {
  28. int a;
  29.  
  30.    for (a=8; a<12; a++) {
  31.       v_draw_hline(a,0x55);
  32.       v_draw_hline(200-12+a,0x55);
  33.    }
  34.    v_draw_vline( 0,0x55);
  35.    v_draw_vline(79,0x55);
  36.    gotoxy(2,1); printf("%s",s);
  37. } /* void v_draw_screen(PSTR s) */
  38.  
  39. /*<f>----------------------------------------
  40.  * FUNCTION: <s> void v_draw_hline(int y, BYTE n)
  41.  * PURPOSE :
  42.  *         :
  43.  * CREATION: 12/02/1988 09:17:31
  44.  */
  45. void v_draw_hline(int y, BYTE n)
  46. {
  47. char far *p = (char far *)0xB8000000L;
  48. int a;
  49.  
  50.    p+=((y>>1)*80);
  51.    if (y&1) p+=0x2000;
  52.  
  53.    for (a=0; a<79; a++)
  54.       *p++=n;
  55.  
  56. } /* void v_draw_hline(int y) */
  57.  
  58. /*<f>----------------------------------------
  59.  * FUNCTION: <s> void v_draw_vline(int x, BYTE n)
  60.  * PURPOSE :
  61.  *         :
  62.  * CREATION: 12/02/1988 09:26:29
  63.  */
  64. void v_draw_vline(int x, BYTE n)
  65. {
  66. int a;
  67. char far *p = (char far *)0xB8000000L;
  68. char far *q = (char far *)0xB8002000L;
  69.  
  70.    p+=x; q+=x;
  71.    for (a=0; a<100; a++) {
  72.       *p=n; p+=80;
  73.       *q=n; q+=80;
  74.    }
  75.  
  76. } /* void v_draw_vline(int x, BYTE n) */